DuckDB 回测引擎 因子/策略历史赚钱吗?
2025-08-22 ~ 2026-08-21
缩量回踩 MA5/MA10(趋势回踩)
242 交易日 · 前复权
01策略说明
用户定义规则 · 五要素齐全(买入/卖出时机+仓位)· 执行口径标注
买入时机MA5>MA20>MA60 多头排列 + 收盘距 MA5 或 MA10 乖离 ≤1.5% + 量比 <0.9(缩量)当日确认,次日开盘买入
买入仓位满仓(单标的 100%,初始资金 100 万)
卖出时机收盘跌破 MA20 次日开盘卖出;或单日跌超 7% 止损;最长持有 10 个交易日
卖出仓位清仓(100%)
选股条件全市场 A 股,成交额 ≥1 亿(无人问津的小票不参与)
候选选择当日满足买入信号的全部股票中,选取「当日成交额最大」的 1 只(热度代理 [ASSUMED]);当日无候选则继续空仓等待
💡 策略本质:缩量回踩 MA5/MA10 亏 38.2%,33 笔胜率仅 27.3%。这是「缩量回踩」的精细化版本(加了 vol_ratio<0.9 的缩量约束),相对裸回踩(-51.5%)确实有改善,但仍未摆脱负收益——说明在 20
02回测总览
模型输出 · [MODEL]
负收益 · 与均线多头回踩同源
近 1 年 33 笔:胜率 27.3%、盈亏比 2.04、总收益 -38.2%、回撤 -69.0%——与既有的均线多头回踩(-51.5%)同属回踩买入,本样本期内均告失败。
结论—— 缩量回踩 MA5/MA10 亏 38.2%,33 笔胜率仅 27.3%。这是「缩量回踩」的精细化版本(加了 vol_ratio<0.9 的缩量约束),相对裸回踩(-51.5%)确实有改善,但仍未摆脱负收益——说明在 2025-08~2026-08 这段区间,多头排列下的回踩买点系统性弱于突破买点。
数据含义—— 27.3% 的胜率是 20 个策略中偏低水平,但盈亏比 2.04 说明成功的回踩能带来可观收益。问题是 A 股「多头排列」在弱市中极不稳定——MA5>MA20>MA60 一旦成立,往往已接近阶段性顶部。
失败模式—— 大量交易在买入后 2-3 日即跌破 MA20 离场——回踩买点被击穿成为「破位起点」。2026-03~04、2026-07 两段调整中亏损失败集中。
横向对比—— 20 策略排名第 15(-38.2%),优于均线多头回踩 -51.5%,与 MA20 放量突破 -34.9% 接近,说明「缩量」约束有效(贡献约 13pct 改善),但方向性劣势无法靠参数弥补。
优化方向—— ①把回踩买点从 MA5/MA10 下移到 MA20/MA60(更深回踩、更高赔率)②加「回踩当日收阳止跌」确认,避免在下跌中途接刀③配合板块轮动(只在强板块内做回踩)。
投资指导—— 缩量回踩是「低吸」逻辑,与「突破」逻辑在本样本期形成鲜明对照(回踩组全负 vs 突破组两强)。实盘使用回踩策略必须叠加趋势/板块过滤,否则单纯依赖均线回踩在 A 股胜率过低。
03收益与回撤
策略净值 vs 沪深300 · 收盘口径
💡 近 1 年 33 笔:胜率 27.3%、盈亏比 2.04、总收益 -38.2%、回撤 -69.0%——与既有的均线多头回踩(-51.5%)同属回踩买入,本样本期内均告失败。
04交易明细
33 笔 · 卖出日=信号触发日次日开盘成交 · 候选=选股日满足买入信号的股票数(均选成交额最大者)
| # | 选股日 | 买入日 | 卖出日 | 触发日 | 股票 | 买价 | 卖价 | 收益 | 天数 | 候选 | 当前资金(¥) | 卖出原因 |
| 1 | 2025-08-22 | 2025-08-25 | 2025-09-04 | 2025-09-03 | 盛和资源 600392.SH | 24.024 | 23.286 | -3.10% | 8 | 815 | ¥968,962 | 连续亏损累计超10% |
| 2 | 2025-09-05 | 2025-09-08 | 2025-09-19 | 2025-09-18 | 贵州茅台 600519.SH | 1424.459 | 1410.041 | -1.04% | 9 | 241 | ¥958,864 | 跌破MA20 |
| 3 | 2025-09-22 | 2025-09-23 | 2025-09-25 | 2025-09-24 | 寒武纪 688256.SH | 938.843 | 918.316 | -2.22% | 2 | 527 | ¥937,612 | 跌破MA20 |
| 4 | 2025-09-26 | 2025-09-29 | 2025-10-09 | 2025-09-30 | 中际旭创 300308.SZ | 409.215 | 418.075 | +2.14% | 2 | 325 | ¥957,632 | 跌破MA20 |
| 5 | 2025-10-10 | 2025-10-13 | 2025-10-15 | 2025-10-14 | 同花顺 300033.SZ | 242.349 | 249.374 | +2.87% | 2 | 192 | ¥985,102 | 跌破MA20 |
| 6 | 2025-10-16 | 2025-10-17 | 2025-11-03 | 2025-10-31 | XD紫金矿 601899.SH | 30.288 | 29.305 | -3.28% | 11 | 426 | ¥952,835 | 持有10天到期 |
| 7 | 2025-11-04 | 2025-11-05 | 2025-11-11 | 2025-11-10 | 兆易创新 603986.SH | 212.69 | 223.275 | +4.95% | 4 | 582 | ¥999,967 | 跌破MA20 |
| 8 | 2025-11-12 | 2025-11-13 | 2025-11-19 | 2025-11-18 | 宁德时代 300750.SZ | 377.687 | 378.128 | +0.09% | 4 | 787 | ¥1,000,836 | 跌破MA20 |
| 9 | 2025-11-20 | 2025-11-21 | 2025-12-03 | 2025-12-02 | 三六零 601360.SH | 12.819 | 12.75 | -0.57% | 8 | 255 | ¥995,126 | 跌破MA20 |
| 10 | 2025-12-04 | 2025-12-05 | 2025-12-17 | 2025-12-16 | 中际旭创 300308.SZ | 538.892 | 556.342 | +3.21% | 8 | 202 | ¥1,027,049 | 连续亏损累计超10% |
| 11 | 2025-12-18 | 2025-12-19 | 2026-01-06 | 2026-01-05 | 新易盛 300502.SZ | 311.025 | 292.478 | -5.99% | 10 | 295 | ¥965,495 | 跌破MA20 |
| 12 | 2026-01-07 | 2026-01-08 | 2026-01-16 | 2026-01-15 | 上海瀚讯 300762.SZ | 40.5 | 51.0 | +25.90% | 6 | 252 | ¥1,215,519 | 单日跌超7%止损 |
| 13 | 2026-01-19 | 2026-01-20 | 2026-02-02 | 2026-01-30 | XD紫金矿 601899.SH | 36.264 | 35.884 | -1.08% | 9 | 848 | ¥1,202,432 | 单日跌超7%止损 |
| 14 | 2026-02-03 | 2026-02-04 | 2026-02-06 | 2026-02-05 | 蓝色光标 300058.SZ | 21.485 | 18.997 | -11.61% | 2 | 266 | ¥1,062,813 | 跌破MA20 |
| 15 | 2026-02-09 | 2026-02-10 | 2026-02-12 | 2026-02-11 | 信维通信 300136.SZ | 81.463 | 75.945 | -6.80% | 2 | 424 | ¥990,509 | 跌破MA20 |
| 16 | 2026-02-13 | 2026-02-24 | 2026-02-27 | 2026-02-26 | 宁德时代 300750.SZ | 365.514 | 340.482 | -6.88% | 3 | 725 | ¥922,378 | 跌破MA20 |
| 17 | 2026-03-02 | 2026-03-03 | 2026-03-12 | 2026-03-11 | 潍柴动力 000338.SZ | 27.3 | 26.095 | -4.45% | 7 | 182 | ¥881,374 | 跌破MA20 |
| 18 | 2026-03-13 | 2026-03-16 | 2026-03-18 | 2026-03-17 | 亨通光电 600487.SH | 49.158 | 42.993 | -12.57% | 2 | 188 | ¥770,580 | 单日跌超7%止损 |
| 19 | 2026-03-19 | 2026-03-20 | 2026-03-31 | 2026-03-30 | 阳光电源 300274.SZ | 165.732 | 154.795 | -6.63% | 7 | 155 | ¥719,495 | 跌破MA20 |
| 20 | 2026-04-01 | 2026-04-02 | 2026-04-07 | 2026-04-03 | 宁德时代 300750.SZ | 400.1 | 382.523 | -4.42% | 2 | 75 | ¥687,670 | 跌破MA20 |
| 21 | 2026-04-08 | 2026-04-09 | 2026-04-13 | 2026-04-10 | 五粮液 000858.SZ | 99.889 | 98.208 | -1.71% | 2 | 45 | ¥675,889 | 跌破MA20 |
| 22 | 2026-04-14 | 2026-04-15 | 2026-04-30 | 2026-04-29 | 烽火通信 600498.SH | 50.614 | 49.116 | -2.99% | 11 | 499 | ¥655,690 | 持有10天到期 |
| 23 | 2026-05-06 | 2026-05-07 | 2026-05-13 | 2026-05-12 | 华特气体 688268.SH | 182.714 | 161.623 | -11.57% | 4 | 83 | ¥579,806 | 单日跌超7%止损 |
| 24 | 2026-05-14 | 2026-05-15 | 2026-05-22 | 2026-05-21 | 东山精密 002384.SZ | 212.86 | 210.92 | -0.94% | 5 | 533 | ¥574,348 | 单日跌超7%止损 |
| 25 | 2026-05-25 | 2026-05-26 | 2026-05-28 | 2026-05-27 | 亨通光电 600487.SH | 71.831 | 67.332 | -6.29% | 2 | 167 | ¥538,204 | 跌破MA20 |
| 26 | 2026-05-29 | 2026-06-01 | 2026-06-08 | 2026-06-05 | 盛合晶微 688820.SH | 193.0 | 159.99 | -17.13% | 5 | 59 | ¥445,990 | 单日跌超7%止损 |
| 27 | 2026-06-09 | 2026-06-10 | 2026-06-24 | 2026-06-23 | 兆易创新 603986.SH | 489.11 | 641.0 | +31.02% | 9 | 73 | ¥584,356 | 单日跌超7%止损 |
| 28 | 2026-06-25 | 2026-06-26 | 2026-07-03 | 2026-07-02 | 华工科技 000988.SZ | 171.0 | 151.69 | -11.32% | 5 | 129 | ¥518,193 | 单日跌超7%止损 |
| 29 | 2026-07-06 | 2026-07-07 | 2026-07-14 | 2026-07-13 | 东方财富 300059.SZ | 21.02 | 19.89 | -5.41% | 5 | 120 | ¥490,180 | 跌破MA20 |
| 30 | 2026-07-15 | 2026-07-16 | 2026-07-20 | 2026-07-17 | 中芯国际 688981.SH | 146.0 | 145.0 | -0.71% | 2 | 65 | ¥486,676 | 单日跌超7%止损 |
| 31 | 2026-07-21 | 2026-07-22 | 2026-07-29 | 2026-07-28 | 药明康德 603259.SH | 125.12 | 127.78 | +2.10% | 5 | 66 | ¥496,876 | 跌破MA20 |
| 32 | 2026-07-30 | 2026-07-31 | 2026-08-17 | 2026-08-14 | 药明康德 603259.SH | 123.0 | 159.0 | +29.24% | 11 | 103 | ¥642,155 | 持有10天到期 |
| 33 | 2026-08-18 | 2026-08-19 | 2026-08-21 | 2026-08-20 | 澜起科技 688008.SH | 208.01 | 200.22 | -3.78% | 2 | 1253 | ¥617,913 | 跌破MA20 |
💡 27.3% 的胜率是 20 个策略中偏低水平,但盈亏比 2.04 说明成功的回踩能带来可观收益。问题是 A 股「多头排列」在弱市中极不稳定——MA5>MA20>MA60 一旦成立,往往已接近阶段性顶部。
05卖出原因分布
全部平仓口径 · 共 33 笔
💡 大量交易在买入后 2-3 日即跌破 MA20 离场——回踩买点被击穿成为「破位起点」。2026-03~04、2026-07 两段调整中亏损失败集中。
0610 策略横向对比
同一引擎同一区间 · 按总收益排序 · ★=当前策略
| 排名 | 策略 | 交易 | 胜率 | 盈亏比 | 总收益 | 最大回撤 | 年化 |
| 1 | 强势股缩量回踩 MA20 趋势回踩 | 35 | 42.9% | 3.84 | +161.2% | -31.9% | +171.7% |
| 2 | 海龟唐奇安通道突破 趋势跟随 | 14 | 28.6% | 5.55 | +79.0% | -43.2% | +83.8% |
| 3 | W底双底突破 形态反转 | 21 | 42.9% | 3.34 | +76.3% | -23.1% | +80.5% |
| 4 | KDJ 低位金叉 震荡指标 | 42 | 38.1% | 1.95 | +9.1% | -41.2% | +9.5% |
| 5 | RSI 超卖反转 超跌反转 | 24 | 58.3% | 0.76 | -1.7% | -37.1% | -1.8% |
| 6 | 涨停基因缩量回踩 打板低吸 | 36 | 33.3% | 2.20 | -3.1% | -44.7% | -3.2% |
| 7 | MACD 零轴下金叉 震荡指标 | 21 | 33.3% | 2.08 | -9.5% | -46.8% | -9.9% |
| 8 | 均线粘合向上突破 形态突破 | 32 | 31.2% | 1.69 | -18.1% | -48.2% | -18.7% |
| 9 | 二连板打板接力 打板接力 | 26 | 26.9% | 3.10 | -18.8% | -61.4% | -20.2% |
| 10 | 120日新高强势追涨 动量追涨 | 27 | 44.4% | 1.19 | -19.7% | -48.0% | -20.4% |
| 11 | 向上跳空缺口放量 缺口突破 | 50 | 34.0% | 2.00 | -24.1% | -55.1% | -25.0% |
| 12 | 布林带突破 波动突破 | 19 | 21.1% | 3.29 | -27.1% | -42.2% | -28.1% |
| 13 | 强势股首阴低吸 趋势回踩 | 46 | 30.4% | 2.13 | -31.4% | -61.4% | -32.5% |
| 14 | MA20 放量突破 趋势跟随 | 25 | 24.0% | 2.01 | -34.9% | -39.6% | -36.1% |
| 15 | 缩量回踩 MA5/MA10 ★ 趋势回踩 | 33 | 27.3% | 2.04 | -38.2% | -69.0% | -39.4% |
| 16 | 放量连续阳线接力 动量追涨 | 30 | 30.0% | 1.83 | -39.3% | -63.0% | -40.5% |
| 17 | 均线多头回踩 趋势回踩 | 38 | 34.2% | 1.06 | -51.5% | -72.2% | -52.9% |
| 18 | 60日新低超跌反弹 超跌反转 | 33 | 42.4% | 0.55 | -54.3% | -56.7% | -55.8% |
| 19 | 双均线金叉趋势跟随 趋势跟随 | 18 | 22.2% | 1.43 | -54.4% | -61.7% | -55.9% |
| 20 | 涨停次日低吸 打板低吸 | 46 | 37.0% | 1.02 | -66.3% | -75.0% | -67.8% |
💡 20 策略排名第 15(-38.2%),优于均线多头回踩 -51.5%,与 MA20 放量突破 -34.9% 接近,说明「缩量」约束有效(贡献约 13pct 改善),但方向性劣势无法靠参数弥补。
07优化建议与风险
基于回测证据 · 模型输出
优化建议(按优先级)
①把回踩买点从 MA5/MA①把回踩买点从 MA5/MA10 下移到 MA20/MA60(更深回踩、更高赔率)
②加「回踩当日收阳止跌」确认②加「回踩当日收阳止跌」确认,避免在下跌中途接刀
③配合板块轮动(只在强板块内③配合板块轮动(只在强板块内做回踩)。
风险提示
大量交易在买入后 2-3 日即跌破 MA20 离场——回踩买点被击穿成为「破位起点」。2026-03~04、2026-07 两段调整中亏损失败集中。
满仓单标的 + 短样本期(242 交易日)——结论稳健性有限,须结合更长周期验证
单笔最大收益对总收益影响显著,需关注收益集中度(见 06 对比区提醒)
数据来源:同花顺金融数据(hithink-finance v0.1.5,本地 DuckDB v_daily_qfq 前复权日K + index history 沪深300 + symbol list 名称映射);回测区间 2025-08-22~2026-08-21(242 交易日);策略:缩量回踩 MA5/MA10(趋势回踩),五要素定义见 strategies.json;口径:涨停=前复权相邻日收益率(主板 ≥+9.8%、创业板/科创板 ≥+19.8%);RSI14 为 SMA 均值口径 [ASSUMED];布林=MA20±2σ(stddev_samp);唐奇安=前 20 日最高/前 10 日最低(不含当日);交易按开盘价成交、满仓单标的、含单边 0.03% 费率(印花税未含);当前资金=初始 100 万按每笔清仓收益滚动累计;总收益含期末未平仓浮动;卖出日=信号触发日(跌超/死叉/破位等)的下一交易日,按开盘价成交;候选=选股日满足买入信号的全部股票数,均选当日成交额最大者(热度代理 [ASSUMED])。回测结果为历史数据模拟 [MODEL],不代表未来表现。仅供研究参考,不构成个人投资建议。